#include <bits/stdc++.h>

std::list<int> lt;

int main()
{
    lt.push_back(1);
    int n;
    int k, p;
    std::cin>> n;
    for(int i=2; i<=n; i++)
    {
        scanf("%d%d", &k, &p);
        std::list<int>::iterator it = lt.begin();
        while(*(it++) != k);
        if(p == 1)
            lt.insert(it,i);
        else
            lt.insert(--it, i);
    }
    std::cin>>n;
    for(int i=0; i<n; i++)
    {
        std::cin>>k;
        std::list<int>::iterator it = lt.begin();
        while(it != lt.end())
        {
            if(*(it++) == k)
            {
                lt.erase(--it);
                break;
            }
        }
    }
    std::list<int>::iterator it = lt.begin();
    while(it != lt.end())
    {
        std::cout<< *(it++)<< " ";
    }
}